# 类对象所拥有的方法，需要用装饰器@classmethod来标识其为类方法，
# 、对于类方法，第一个参数必须是类对象，一般以cls作为第一个参数，
# 类方法可以通过类对象，实例对象调用
class Person:
    country="China"
    def __init__(self,name):
        self.name=name
        pass
    @classmethod
    def get_country(cls):
        return cls.country
    @classmethod
    def set_country(cls,city):
        cls.country=city
    pass
xm=Person("小明")
print("类对象通过类方法访问类属性：{}".format(Person.get_country()))
print("实例对象通过类方法访问类属性：{}".format(xm.get_country()))
print("---------------------------------------------------------")
Person.set_country("中国青岛")
print("类对象通过类方法访问类属性：{}".format(Person.get_country()))
print("实例对象通过类方法访问类属性：{}".format(xm.get_country()))
print("---------------------------------------------------------")
xm.set_country("中国济南")
print("类对象通过类方法访问类属性：{}".format(Person.get_country()))
print("实例对象通过类方法访问类属性：{}".format(xm.get_country()))
print("---------------------------------------------------------")